
import random
from PIL import Image, ImageDraw, ImageFont, ImageFilter


# 随机字母
def random_str():
    return chr(random.randint(65 ,90))


# 随机颜色：
def random_color():
    return (random.randint(64 ,255), random.randint(64 ,255), random.randint(64 ,255))


# 随机颜色2：
def random_color_two():
    return (random.randint(32, 127), random.randint(32, 127), random.randint(32, 127))


# 设定验证码长宽 240 x 60
width = 240
height = 60
image = Image.new('RGB' ,(width ,height) ,(255 ,255 ,255))
# 创建font对象
font = ImageFont.truetype('micross.ttf' ,36)
# 创建Draw对象
draw = ImageDraw.Draw(image)
# 填充每个像素
for x in range(width):
    for y in range(height):
        draw.point((x ,y), fill=random_color())
# 输出文字
for t in range(4):
    draw.text((60 * t + 10, 10), random_str(), font=font ,fill=random_color_two())
# 模糊化
image = image.filter(ImageFilter.BLUR)
# 保存
image.save('code.jpg' ,'jpeg')